package com.itheima.mapper.admin;

import com.itheima.admin.categorypojo.Category;
import com.itheima.admin.categorypojo.dto.CategoryDto;
import com.itheima.admin.categorypojo.vo.CategoryVo;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * @author wuzhiyong
 */
@Mapper
public interface CategoryMapper {

    /**
     * 新增分类
     *
     * @param categoryDto categoryDto
     * @return 条数
     */
    int insertCategory(CategoryDto categoryDto);

    /**
     * 分页
     *
     * @param startIndex startIndex
     * @param pageSize   pageSize
     * @return List<Category>
     */
    List<CategoryVo> selectPageCategory(Integer startIndex, Integer pageSize);
    /**
     * 分页-统计总条数
     * @return 条数
     */
    @Select("select count(*)from admin_category")
    int selectAll();

    /**
     * 删除
     *
     * @param id id
     * @return 条数
     */
    @Delete("delete from reggie.admin_category where id=#{id}")
    int deleteByIdcg(String id);

    /**
     * 更新
     *
     * @param categoryDto categoryDto
     * @return 条数
     */
    int updateByIdCategory(CategoryDto categoryDto);

    /**
     * 分类下拉列表
     *
     * @param type type
     * @return Category
     */
    @Select("select * from reggie.admin_category where type=#{type}")
    List<Category> selectByType(Integer type);


}
